package main

import "fmt"

// 任何品牌的车都会跑(一个方法要接收不同的结构体类型)
// 接口
type car interface {
	drive()
}

// 结构体
type BYD struct {
	name string
}
type VW struct {
	name string
}

// 方法
func (b BYD) drive() {
	fmt.Println(b.name, "行驶中")
}
func (v VW) drive() {
	fmt.Println(v.name, "行驶中")
}

// 行驶方法
func carDrive(c car) {
	c.drive()
}
func main() {
	car1 := BYD{"比亚迪"}
	car2 := VW{"大众"}
	carDrive(car1) // 比亚迪 行驶中
	carDrive(car2) // 大众 行驶中
}
